unit clsVariacaoFichaProduto;

interface

uses Dm, dbtables, biblio;

type
  TVariacaoFichaProduto = class
  public
    Pro_Codigo2: string;
    Pro_Codigo3: string;
    Mostra_Desc: string;
    function Recuperar(FP_Numero, Pro_Codigo1: string): boolean;
    procedure Gravar(FP_Numero, Pro_Codigo1: string);
    procedure Excluir(FP_Numero: string);
    procedure Consultar(FP_Numero: string; var tq: TQuery);
    procedure Consultar1(FP_Numero: string; var tq: TQuery);
  end;

implementation

procedure TVariacaoFichaProduto.Excluir;
var
  tq: TQuery;
begin
  tq := TQuery.Create(dmint);
  tq.databasename := dmint.db.databasename;
  tq.active := false;
  tq.close;
  tq.sql.Clear;
  tq.params.clear;
  tq.sql.add('Delete from VariacaoFichaProduto where FP_Numero=:a');
  tq.params[0].asstring := FP_Numero;
  tq.execsql;
  tq.close;
  tq.free;
end;

procedure TVariacaoFichaProduto.Gravar;
var
  tq: TQuery;
begin
  tq := TQuery.Create(DmInt);
  tq.databasename := dmint.Db.DatabaseName;
  tq.active := false;
  tq.sql.clear;
  tq.params.clear;
  tq.sql.add('Select * from VariacaoFichaProduto where FP_Numero=:a and Pro_Codigo1=:b');
  tq.params[0].AsString := FP_Numero;
  tq.params[1].AsString := Pro_Codigo1;
  tq.open;
  if tq.eof then begin
    tq.close;
    tq.sql.clear;
    tq.params.clear;
    tq.sql.add('Insert into VariacaoFichaProduto values (:k_FP_Numero,:k_Pro_Codigo1,' +
      ':k_Pro_Codigo2,:k_Pro_Codigo3,:k_Mostra_Desc)');
  end else begin
    tq.close;
    tq.sql.clear;
    tq.params.clear;
    tq.sql.add('Update VariacaoFichaProduto set Pro_Codigo2=:k_Pro_Codigo2,' +
      'Pro_Codigo3=:k_Pro_Codigo3,Mostra_Desc=:k_Mostra_Desc where ' +
      'FP_Numero=:k_FP_Numero and Pro_Codigo1=:k_Pro_Codigo1');
  end;
  tq.parambyname('k_FP_Numero').asstring := FP_Numero;
  tq.parambyname('k_Pro_Codigo1').asstring := Pro_Codigo1;
  tq.parambyname('k_Pro_Codigo2').asstring := Pro_Codigo2;
  tq.parambyname('k_Pro_Codigo3').asstring := Pro_Codigo3;
  tq.parambyname('k_Mostra_Desc').asstring := Mostra_Desc;
  tq.execsql;
  tq.close;
  tq.free;
end;

function TVariacaoFichaProduto.Recuperar;
var
  tq: TQuery;
begin
  tq := TQuery.Create(dmint);
  tq.databasename := DmInt.Db.DatabaseName;
  tq.active := false;
  tq.sql.clear;
  tq.params.clear;
  tq.sql.add('Select * from VariacaoFichaProduto where FP_Numero=:a and Pro_Codigo1=:b');
  tq.params[0].asstring := FP_Numero;
  tq.params[1].asstring := Pro_Codigo1;
  tq.open;
  if tq.eof then result := false else result := true;
  pro_codigo2 := tq.fieldbyname('pro_codigo2').asstring;
  pro_codigo3 := tq.fieldbyname('pro_codigo3').asstring;
  Mostra_Desc := tq.fieldbyname('Mostra_Desc').asstring;
  tq.close;
  tq.free;
end;

procedure TVariacaoFichaProduto.Consultar;
begin
  tq.close;
  tq.sql.clear;
  tq.params.clear;
  tq.sql.add('Select Pro_Codigo3,Mostra_Desc from VariacaoFichaProduto where FP_Numero=:a');
  tq.params[0].asstring := FP_Numero;
end;

procedure TVariacaoFichaProduto.Consultar1;
begin
  tq.close;
  tq.sql.clear;
  tq.params.clear;
  tq.sql.add('Select * from VariacaoFichaProduto where FP_Numero=:a');
  tq.params[0].asstring := FP_Numero;
end;

end.
